﻿using System.Collections.ObjectModel;
using NUnit.Framework;
using pvmoduleditor.contracts.viewmodels;

namespace pvmoduleditor.gui.tests
{
    [TestFixture]
    public class gui_tests
    {
        [Test, Explicit, RequiresSTA]
        public void Daten_anfordern_über_Dialogstart()
        {
            var sut = new StartGui();

            int cnt = 0;
            sut.Result += () => cnt++ ;
            sut.ShowDialog();
            Assert.AreEqual(1, cnt);
        }

        [Test, Explicit, RequiresSTA]
        public void Zeige_gefüllte_ListView()
        {
            var sut = new StartGui();
            sut.Result += delegate { };
            var redPVM = new PVModulReduziert {
                Hersteller = "Hans",
                Artikelnummer = "1234",
                Typ = "185W Mono",
                Leistung_W = "185"
            };
            var vm = new StartGuiViewModel {
                PVModulReduziertListe = new ObservableCollection<PVModulReduziert> {redPVM}
            };

            sut.Process(vm);
            sut.ShowDialog();
        }
    }
}